package com.cloud.async.flow.web.tx;

import java.util.List;

/**
 * @author chengr
 */
public interface TransactionSource {

    /**
     * 获取单事务
     * @param <T>
     * @return
     */
    <T> T newSession();

    /**
     * 提交事务
     * @param  transactionObjList
     * @return
     */
    //boolean commitTrans(List<Object> transactionObjList);

    /**
     * 提交事务
     * @param transactionObj
     * @return
     */
    boolean commitTrans(Object transactionObj);


    /**
     * 回滚事务
     * @return transactionObjList
     */
    //boolean rollBack(List<Object> transactionObjList);

    /**
     * 回滚事务
     * @param transactionObj
     * @return
     */
    boolean rollBack(Object transactionObj);

}
